嗨!各位朋友大家好,打給後,歹嘎吼,胎尬喉,我是阿圓,開始之前一樣有請今天one piece!
(喜歡布魯克跟拉布!)
昨天我們把 cookie 實作 session 的兩種方式簡單的介紹了一下,幫大家回顧一下:
那 Rails 實作 session 的方式是什麼呢???我寫到這邊,早就覺得 Session-based session 的實作方式比較好,畢竟cookie 只存sessionID ,被取得資料的風險又更小了,而且又沒有大小限制的問題。
但是!But!しかし!
Rails是用 Cookie-based session 的方式來實作的,因為這種方式比其他的方案都還要快,官方文件也有貼心提醒各位是這樣運作,有幾個安全性的問體要考慮,以下是官方文件的文字:
Rails CookieStore saves the session hash in a cookie on the client-side. The server retrieves the session hash from the cookie and eliminates the need for a session ID. That will greatly increase the speed of the application, but it is a controversial storage option and you have to think about the security implications and storage limitations of it:
不外乎是記得要考慮以下幾點:
以上大約是 Rails 實作 session 的方式,所以大家在寫專案的時候要注意,session 跟 cookie 存了什麼喔!
By th way,其實官方文件寫得很棒,還介紹了一些hacker攻擊的手法,有時間大家可以看一下。
感謝各位看到這邊,若有任何建議,請各位不吝指教!我們明天見!
官方文件
深入 Session 與 Cookie:Express、PHP 與 Rails 的實作